package com.jacob.androidframe.base;

import android.view.View;
import android.view.View.OnClickListener;

/**
 * 本类是所有ActivityDialog的父类。
 * 用来封装和业务无关的复杂代码（例如显示消息、弹出对话框、启动其他Activity等），简化Activity的代码量。
 * 工程中所有的ActivityDialog都应该继承本类，以便统一风格。
 * 
 * 注意1：因为setTheme()方法有BUG，所以需要手工在AndroidManifest.xml中，设置ActivityDialog的主题为android.R.style.Theme_Dialog（或者其他自定义的主题）。
 * BUG的连接如下，09年就提出来了，直到Android 4.0.4依然未修复。
 * https://code.google.com/p/android/issues/detail?id=3793
 * https://code.google.com/p/android/issues/detail?id=4394
 * 
 * @author 王超
 * 
 */
public abstract class ActivityDialogBase extends ActivityBase implements OnClickListener {
	
	/**
	 * 将this，传给页面中View的setOnClickListener()方法。
	 * 然后点击该View时，就会回调本方法。
	 * 
	 * @param pView 被点击的View。
	 */
	public abstract void onViewClick(View pView);

	@Override
	public final void onClick(View pView) {
		onViewClick(pView);
	}
	
}
